package JavaSE.CODE.javaCollection;

import java.util.HashSet;
import java.util.Iterator;

/**
 * HashSet集合的使用
 * 存储结构：哈希表！（数组+链表+红黑树）
 */

public class HashSetDemo {
    public static void main(String[] args) {
        //创建集合
        HashSet<String> hashSet = new HashSet<>();
        //1、添加数据
        hashSet.add("cc");
        hashSet.add("bb");
        hashSet.add("aa");
        hashSet.add("aa");//重复的加不进去
        System.out.println(hashSet.toString());
        //2 移除，只能通过对象移出，没有下标
        hashSet.remove("aa");
        System.out.println(hashSet.toString());
        //3 遍历，由于没有下标，只有如下两种方法
        //3.1 foreach（不需要下标）
        for (String s : hashSet) {
            System.out.println(s);
        }
        //3.2 Iterator
        Iterator<String> iterator = hashSet.iterator();
        while(iterator.hasNext()){
            System.out.println(iterator.next());
        }
        //4 判断、判空
        System.out.println(hashSet.contains("bb"));
        System.out.println(hashSet.isEmpty());
    }
}
